const path = require('path')
const fs = require('fs')

function getAllRouterFileExport(filePath, callback) {
    // 根据文件路径读取文件，返回一个文件列表
    const files= fs.readdirSync(filePath)
    // 遍历读取到的文件列表
    files.forEach((fileName) => {
      const absFilePath= path.join(filePath, fileName)
      // 判断文件状态是文件还是文件夹
      const stats = fs.statSync(absFilePath)
      const isFile = stats.isFile()
      const isDir = stats.isDirectory()
      if (isFile) {
        const file =  require(absFilePath)
        callback(file, fileName)
      }
      if (isDir) {
        // 如果是文件夹，递归遍历该文件夹里面的文件
        getAllRouterFileExport(absFilePath, callback)
      }
    })
  }

  module.exports = getAllRouterFileExport